This invention relates to the servicing of computer systems, and more specifically to the secure servicing of remote computer systems and network appliances.
The servicing of computer systems encompasses the processes and methods by which the proper operation and maintenance of computer systems are ensured. Servicing can be used to detect and correct problems prior to serious failures, or to restore computer system operation when the proper functioning of the system has been compromised.
With an ever expanding use of computer systems in the commercial sector, many businesses find outsourcing the servicing of their computing investments a cost effective alternative to maintaining and managing an internal support staff. However, implicit in the contracting of third party support has been the cost of support personnel travelling to the contracting party's site to perform such servicing. Further, there is often a delay in the provision of such service, particularly when the contracting party is located in a location remote from significant centers of commerce. While it may be possible for a contracting party to request expedited on-site support when needed, such a request typically comes at an increased cost.
The wide scale use of computer networks such as the Internet has not yet been leveraged as an effective tool for the servicing of computer systems. Today, the Internet's role is relegated to being the conduit by which problem reports are entered and tracked by system administrators. In most cases, such problem reports provide only the symptoms or consequences of a problem; service professionals must still obtain additional information in order to provide an effective resolution. Access to this additional information typically occurs in one of three ways: over the phone with remote service professionals instructing system administrators with commands to run various directives and to report verbally on their outcome; through email exchanges between the service professional and the system administrator; or by on-site staffing or visitation by service professionals. The former two have historically provided a slow problem resolution time due to the need for information to pass through an intermediary, the system administrator. The information relayed to the service personnel may also be incomplete or improperly characterized. The latter approach clearly enables rapid resolution, but can be significantly more expensive than the other methods.
It would therefore be preferable to enable a system for supporting secure computer networks that combines the beneficial aspects of these prior art approaches. Specifically, such a support system would preferably have the following three characteristics.
First, the system must be interactive, such that the service professional is capable of directly interrogating or commanding the computer system to be maintained and of receiving a direct, substantially immediate response. The service professional should have the ability to download patches and make changes to the target system in order to restore compromised function as rapidly as possible.
Second, this interactive access to the target system must be capable of being provided remotely in order to obviate the need for as-needed or permanent on-site support. The service professional must have the ability to access the system being serviced from any location having access to the Internet or other appropriately configured data network.
Third, the facility for providing service personnel with remote access must be secure. Only authorized service personnel should have access to the target computer system. Further, all data exchanges between the service personnel and the target system should be encrypted to prevent electronic eavesdropping or “snooping” by third parties. Encryption also serves to frustrate attempts by third parties to inject false directives to the target system or to submit false data to the service personnel.
The Internet provides the communications vehicle by which businesses all over the world are connected. Layered protocols such as Hypertext Transport Protocol (HTTP) support interactive exchanges over the Internet. It is necessary for businesses to tightly control which, if any, parts of their internal computer networks are accessible to computer users outside such internal networks. This is often accomplished through the use of firewall technology segment an enterprise's networks such that internal networks are not accessible to unauthorized personnel including users of other networks such as the Internet. To this end, firewalls examine data packet identifiers in deciding which are allowed to pass the boundary between internal and external networks.
However, necessary security provisions including firewalls represent an obstacle to realizing a secure, remote network support system. For instance, an attempt to send a request other than a mail message to a firewall-protected network will normally fail. The only systems which are accessible by external access are corporate web servers which are often resident outside the firewall.
The most common remote management solution in use at present is Secure Shell (SSH) which allows encrypted, remote login over the Internet. The system allowing remote login must manage all access control; improper configuration of such a system could expose the protected systems to a security risk. In addition, firewalls between the Internet and a system to be supported must be configured to allow a port specific to SSH to be passed through, which some administrators are reluctant to do.